#!/bin/bash

# 安装JDK，并配置环境变量

# JDK版本
jdkVersion="openjdk-17.0.0.1"
jdkFile=${jdkVersion}".tar.gz"
jdkDownloadUrl="https://download.java.net/openjdk/jdk17.0.0.1/ri/openjdk-17.0.0.1+2_linux-x64_bin.tar.gz"

# 安装路径
installDir="/opt/soft/jdk/${jdkVersion}"

# 判断是否安装有jdk
checkJavaExist() {
  # java变量可用
  _=$(command -v java)
  if [ "$?" == "0" ]; then
    echo "java环境已存在，无需安装"
    java --version
    exit 1
  fi
  # 存在JAVA_HOME 环境变量
  if grep "JAVA_HOME" /etc/profile &>/dev/null; then
    echo "java环境变量已存在，无需安装"
    exit 1
  fi
}
checkJavaExist

## 创建目录
if [ ! -d ${installDir} ]; then
  echo "mkdir -p ${installDir}"
  mkdir -p ${installDir}
fi

echo "cp -y ${jdkFile} ${installDir}"
cp -f ${jdkFile} ${installDir}

echo "cd ${installDir}"
cd ${installDir} || exit

# 下载
echo "开始下载OpenJDK"
wget -O ${jdkFile} ${jdkDownloadUrl}

# 解压并重命名，–strip-component=1 代表解压出来的文件，剥离前一个路径
echo "tar -zxvf ${jdkFile} -C ${installDir} --strip-components 1"
tar -zxvf ${jdkFile} -C ${installDir} --strip-components 1

# 环境变量
if ! grep "JAVA_HOME" /etc/profile &>/dev/null; then
  cat >>/etc/profile <<EOF
export JAVA_HOME=${installDir}
export PATH=\$PATH:\${JAVA_HOME}/bin
EOF
fi

echo "source /etc/profile"
source /etc/profile
# 查看版本
java -version

printf -- "\033[32m 安装完成，jdk目录为：${installDir} \033[0m\n"
